.define SYSROM $0000
.define GPIO $0400
.define KEYBOARD $0500
.define PERIPH $0600
.define ROBOT $0700
.define SCREEN $0800
.define COLOR $0C00
.define SYSRAM $1000
.define USERRAM $3000

; I/O device
.org GPIO
io:
    .mulLeft: .mulHigh: byte
    .mulRight: .mulLow: .mulResult: byte
    .dividend: .quotient: byte
    .divisor: .remainder: byte
    .popcount: byte
    .timer: byte
    byte[(256-6)]

.org KEYBOARD
keyboard:
    .queue: .int: byte
    byte[(256-1)]

.org PERIPH
byte[256]

.org ROBOT
robot:
    .color: byte
    .control: byte
    byte[(256-2)]

.org SCREEN
screen:
    .char: byte[1024]
    .color: byte[1024]

.org SYSROM
